const http=require('http');
const querystring=require('querystring');

const server= http.createServer((req,res)=>{
    const method=req.method;
    const url=req.url;
    const path=url.split('?')[0];//获取域名
    const query=querystring.parse(url.split("?")[1])//获取get请求的参数

    const responseData={
        method,
        url,
        path,
        query
    }

    //将返回给客户端的responData数据类型设置成JSON格式
    res.setHeader('Content-Type','application/json');

    if(method==='GET'){
        res.end(
            JSON.stringify(responseData)
        )
    }
    if(method==='POST'){
        let postData='';
        //通过on方法监听
        req.on('data',chunk=>{
            postData += chunk.toString();//服务端接收到的请求数据是二进制形式，要对其进行流处理后拼接成字符串
        })
        req.on('end',()=>{
            responseData.postData=postData;

            res.end(
                JSON.stringify(responseData)
                )
        })
    }
});

server.listen(3000,()=>{
    console.log('server is runing at port 3000')
})